package Category

import (
	"time"
)

// Category 分类模型，对应数据库中的categories表
type Category struct {
	ID        uint      `json:"id"`         // 主键，自增
	Name      string    `json:"name"`       // 分类名称
	ParentID  *uint     `json:"parent_id"`  // 父分类ID，null表示顶级分类
	Level     int       `json:"level"`      // 分类层级，1为顶级
	Path      string    `json:"path"`       // 分类路径，如：Go/基础
	UserID    uint      `json:"user_id"`    // 用户ID
	CreatedAt time.Time `json:"created_at"` // 创建时间
	UpdatedAt time.Time `json:"updated_at"` // 更新时间

	// 关联关系
	Parent   *Category   `json:"parent,omitempty"`   // 父分类
	Children []*Category `json:"children,omitempty"` // 子分类
}
